Information services and data processing industries in general have rapidly expanded as a result of the need for computer systems to manage and store large amounts of data. As an example, financial service companies such as banks, mutual fund companies and the like now, more than ever before, require access to many hundreds of gigabytes or even terabytes of data and files stored in high capacity data storage systems. Other types of service companies have similar needs for data storage.
Data storage system developers have responded to the increased need for storage by integrating high capacity data storage systems, data communications devices (e.g., switches), and computer systems (e.g., host computers or servers) into so-called “storage networks” or “Storage Area Networks” (SANs.)
In general, a storage area network is a collection of data storage systems that are networked together via a switching fabric to a number of host computer systems operating as servers. The host computers access data stored in the data storage systems (of a respective storage area network) on behalf of client computers that request data from the data storage systems. For example, according to conventional applications, upon receiving a storage access request, a respective host computer in the storage area network accesses a large repository of storage through the switching fabric of the storage area network on behalf of the requesting client. Thus, via the host computer (e.g., server), a client has access to the shared storage system through the host computer. In many applications, storage area networks support hi-speed acquisitions of data so that the host servers are able to promptly retrieve and store data from the data storage system.
Conventional storage area network management applications typically include a graphical user interface (GUI) that enables a network manager to graphically manage, control, and configure various types of hardware and software resources associated with a corresponding managed storage area network. For example, one conventional storage management application generates a graphical user interface utilized by a storage administrator to graphically select, interact with, and manage local or remote devices and software processes associated with the storage area network. Based on use of the graphical user interface in combination with an input device such as a hand operated mouse and corresponding pointer displayed on a viewing screen, a storage administrator is able to manage hardware and software entities such as file systems, databases, storage devices, volumes, peripherals, network data communications devices, etc., associated with the storage area network. Consequently, a storage management station and associated management software enables a storage administrator (a person responsible for managing the storage network) to manage the storage area network and its resources.
One way of managing resources associated with the storage area network is to maintain so-called managed objects (e.g., representing storage area network resources) and store corresponding information associated with the managed objects in a respective database. In general, a managed object is a software entity that defines a corresponding hardware or software resource of the storage area network.
Each managed object in a storage area network environment can have many different associated attributes. For example, a switch resource is one type of managed object found in a storage area network. The switch has associated attribute information such as make (e.g., manufacturer), model number, software version information, etc. As mentioned above, the actual data associated with this attribute information is stored in a relational database.
One conventional way to store information associated with the different managed objects is to store the object information in tables of a relational database. According to one conventional technique, each of multiple different types of attributes associated with a given managed object (e.g., a representation of a storage area network resource) are stored in a different respective table of a relational database. Thus, the greater the number of resources and corresponding attributes in the storage area network, the greater the number of tables that will be maintained in the relational database.
Foreign keys in tables of the relational database point to one or more other tables in the relational database to form associations. Use of the foreign keys enables a database manager to identify the associations and retrieve appropriate data from the tables in the database for given managed objects. After retrieval of appropriate data, a display process displays the retrieved information associated with a respective managed object in a form suitable for viewing by a storage area network administrator.